As the multi-media market continues to grow, demands for smaller, more powerful tools to implement the multi-media products also grow. One area in which the demands generally outpace the technology of the tools is digital signal processing and, in particular, digital signal processing specifically designed for audio applications.
There are many digital signal processing chips currently in use and presently competing for market share. An example of a digital signal processing chip currently in use is the Ensoniq Signal Processor (ESP). The ESP chip has been used in keyboards shipped to customers since 1989.
FIG. 1 illustrates the overall architecture of the ESP including the use of a general purpose ALU 102 and multiplier 104/accumulator 106 coupled together by three busses X, Y and Z. Also shown in FIG. 1 are the data in/out latches 108a/108b, an address generator 110 and data storage areas including microcode memory 112, GPRs 114 and SPRs 116.
The architecture shown in FIG. 1 has several deficiencies. Primary deficiencies include the double usage of GPRs as general purpose registers and as DRAM offsets to external memory. When used as DRAM offsets, the GPR used is constrained to have the same address as the line of microcode which requests the DRAM access.
Secondary deficiencies include the lack of a general purpose barrel shifter which is useful for fixed point arithmetic at various radices. There are few provisions for double precision arithmetic. External memory accesses can only be queued two-deep. The ALU has only 16 instructions, and no provision for branching.
Therefore, the ESP functional units can only work on two operands; i.e., one of the source operands must be a destination as well.
However, as technology advances allowing more functions to reside on a single chip, new improvements to overcome the deficiencies of prior architectures can provide a powerful yet cost-effective audio digital signal processor.